home *** CD-ROM | disk | FTP | other *** search
/ C/C++ Users Group Library 1996 July / C-C++ Users Group Library July 1996.iso / vol_400 / 424_02 / ED-157 / toss_data.c < prev    next >
C/C++ Source or Header  |  1993-09-13  |  1KB  |  46 lines

  1. /*
  2.  * Copyright (C) 1992 by Rush Record (rhr@clio.rice.edu)
  3.  * 
  4.  * This file is part of ED.
  5.  * 
  6.  * ED is free software; you can redistribute it and/or modify it under the terms
  7.  * of the GNU General Public License as published by the Free Software Foundation.
  8.  * 
  9.  * ED is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
  10.  * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
  11.  * PARTICULAR PURPOSE.  See the GNU General Public License for more details.
  12.  * 
  13.  * You should have received a copy of the GNU General Public License along with ED
  14.  * (see the file COPYING).  If not, write to the Free Software Foundation, 675
  15.  * Mass Ave, Cambridge, MA 02139, USA.
  16.  */
  17. #include "opsys.h"
  18.  
  19. #include <stdlib.h>
  20.  
  21. #include "rec.h"
  22.  
  23. /******************************************************************************\
  24. |Routine: toss_data
  25. |Callby: main remove_win
  26. |Purpose: Frees data associated with all records in a record queue.
  27. |Arguments:
  28. |    base is the base of the record queue.
  29. \******************************************************************************/
  30. void toss_data(base)
  31. register rec_ptr base;
  32. {
  33.     rec_ptr cur;
  34.  
  35.     while(base->next != base)
  36. /*    while(base->next != (rec_ptr)&base->next)*/
  37.     {
  38.         remq(cur = base->next);
  39.         if(cur->recflags & 1)
  40.             ifree(cur->data);
  41.         ifree(cur);
  42.     }
  43.     ifree(base);
  44. }
  45.  
  46.